//数组方法集
{
    //创建数组
    //1.数组字面量
    let fruits = ['Apple', 'Banana'];

    //2.构建函数,如果传输的数字则为长度，其它则按照对应创建数组
    let a=new Array(2);//创建长度为2的空数组
    let b=new Array("2");//创建一个字符串2的数组,长度为1
    let c=new Array([1,2,3,4]);//创建2维数组,长度为1
    let d=new Array([1,2,3,4],[1,23]);

    a[3]="4";//ok
    //console.log(a);

    //不行,因为还不知道变量是什么
    // let e;
    // e[0]="k";
    // console.log(e);

    //ok,因为知道变量是数组
    let f=[];
    f[0]="k";
    f[110]="k";
   // console.log(f);
}

{
    //copyWithin(target,start,end):将数组中的某段值复制到某个位置
    let a=["a","b","c"];
   // console.log(a.copyWithin(0,1));//["b","c","c"]从位置1开始复制到位置0，会改变原数组
}

{
    //entries():返回可迭代的对象（Object [Array Iterator]），通过next()方法可以调出其值
    var arr = ["a", "b", "c"];
   var iterator = arr.entries();
  // console.log(arr,iterator);//Object [Array Iterator]
  // console.log(iterator.next());//{ value: [ 0, 'a' ], done: false }
}

{
    //every(fun(val,index,array)):如果所有true则返回true,否则返回false
    var arr = ["a", "b", "c"];

    let rs=arr.every((val,index,array)=>{
        return val!="aa";
    });
    //console.log(rs);//true

    let rs1=arr.every((val,index,array)=>{
        return val!="a";
    });
    //console.log(rs1);//false

}

{
    //fill(val,start,end):用一个固定值填充一个数组中从起始索引到终止索引内的全部元素。不包括终止索引,会改变原数组
    let a=["a","b","c"];
    let b=a.fill(0,1,10);//[ 'a', 0, 0 ]
    let c=a.fill(0,4,10);//超出数组长度不会有任何改变
    console.log(a,b);
}